As a technology for moving an object by a legged mobile robot, there has been known a technology disclosed in, for example, Japanese Unexamined Patent Application Publication No. H10-230485 by the present applicant (hereinafter referred to as patent document 1).
According to the technology, a desired gait is generated such that a dynamic balance condition that a component (horizontal component), excluding a vertical component, of a moment produced about a desired ZMP (a desired floor reaction force central point) by a resultant force of an inertial force produced due to a motion of a robot and the gravity and an external force acting on the robot is zero (a floor reaction force acting on the desired floor reaction force central point and the aforesaid resultant force are balanced with each other) is satisfied.
According to the technology disclosed in Patent Document 1 mentioned above, before an operation of, for example, pushing an object, is begun, a reaction force (an external force) received by a robot from the object is zero; therefore, a gait is generated such that the horizontal component of a moment produced about a desired ZMP by a resultant force of an inertial force produced due to a motion of the robot and the gravity is zero. Then, from the moment the operation of pushing the object is started, a gait is generated such that the horizontal component of a moment produced about the desired ZMP by a resultant force of the inertial force, the gravity, and a non-zero external force is zero.
Thus, when the operation of pushing the object is begun, a sudden change in an external force causes a sudden change in a ZMP. This has been leading to a danger that it becomes difficult to smoothly change a motion state of the robot before and after pushing the object so that the ZMP falls within a proper range of a ground contact surface (more specifically a so-called supporting polygon) of the robot, resulting in a difficulty of securing stability of the robot. Here, the supporting polygon is a smallest convex polygon that includes the ground contact surface of the robot.
As a possible solution, for instance, before starting the operation of pushing the object, the robot (a bipedal mobile robot in this case) may be set to an inclining-forward posture so as to make the distal portions of the arm bodies thereof (more generally a portion to be engaged with the object to push the object) come in contact with the object and the robot may be also caused to land with the two leg bodies thereof longitudinally spread, considering changes in ZMP attributable to reaction forces acting on the robot. Then, in this state, it would be possible to apply a force to the object through the intermediary of the arm bodies. In this case, longitudinally spreading the two leg bodies would increase the length of the supporting polygon in a direction in which the object is to be moved; therefore, adding a force to the object from the robot would make it possible for a ZMP to remain in a proper range even if the ZMP suddenly changes, thus allowing the robot to push the object while maintaining the stability of the robot.
Doing as described above, however, would require special operation control for setting the posture of the robot as described above before starting the operation of pushing an object. Hence, the operation of pushing the object cannot be quickly started. Furthermore, in a situation wherein only one leg body of the robot is in contact with the ground, it would be difficult to start the operation of pushing the object.
The present invention has been made in view of the background described above, and it is an object thereof to provide a control method that makes it possible to smoothly change motions of a robot while preventing a ZMP from significantly changing before and after an object is moved by the robot.